<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Heap access method specific configuration</title>
    <link rel="stylesheet" href="gettingStarted.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Berkeley DB Programmer's Reference Guide" />
    <link rel="up" href="am_conf.html" title="Chapter 2.  Access Method Configuration" />
    <link rel="prev" href="hash_conf.html" title="Hash access method specific configuration" />
    <link rel="next" href="rq_conf.html" title="Queue and Recno access method specific configuration" />
  </head>
  <body>
    <div xmlns="" class="navheader">
      <div class="libver">
        <p>Library Version 12.1.6.2</p>
      </div>
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Heap access method specific
        configuration</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="hash_conf.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 2.  Access Method Configuration </th>
          <td width="20%" align="right"> <a accesskey="n" href="rq_conf.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="heap_conf"></a>Heap access method specific
        configuration</h2>
          </div>
        </div>
      </div>
      <p>
        Configuring the Heap access method is fairly simple. Beyond
        the general configuration required for any access method, you
        can configure how large the database will become, as well as
        the amount by which the database grows. 
    </p>
      <p>
        If you provide no configuration relative to the heap size,
        then the database will grow without bound. Whether this is
        desirable depends on how much disk space is available to your
        application.
    </p>
      <p> 
        You can limit the size of the on-disk database file by
        using the <a href="../api_reference/C/dbset_heapsize.html" class="olink">DB-&gt;set_heapsize()</a> method. If the size specified on
        this method is reached, then further attempts to insert/update
        records will fail with a <code class="literal">DB_HEAP_FULL</code> error
        message. 
    </p>
      <p> 
        Heap databases are organized into regions, and each region
        is a constant size. The size of the region in a heap database
        is limited by the page size, the first page of the region
        contains a bitmap describing the available space on the
        remaining pages in the region. When the database experiences
        write contention, a region is added to reduce contention. This
        means heap databases can grow in size very quickly. In order
        to control the amount by which the database increases, the
        size of the region is configurable via
        <a href="../api_reference/C/dbset_heap_regionsize.html" class="olink">DB-&gt;set_heap_regionsize()</a>. 
    </p>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="hash_conf.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="am_conf.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="rq_conf.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Hash access method specific
        configuration </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> Queue and Recno access method specific configuration</td>
        </tr>
      </table>
    </div>
  </body>
</html>
